package com.wzdigit.wms.basic.domain.inv;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableId;
import com.wzdigit.framework.orm.model.BasicDomain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 封库/解封明细
 * </p>
 *
 * @author 
 * @since 2021-06-05
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("WMS_SEAL_DTL")
@KeySequence(value = "WMS_SEAL_DTL_SEQ", clazz = Integer.class)
public class SealDtl extends BasicDomain {

    private static final long serialVersionUID = 1L;

    /**
     * 封库/解封单明细ID
     */
    @TableId(value = "SEAL_DTL_ID", type = IdType.INPUT)
    private Integer sealDtlId;

    /**
     * 封库/解封单头ID
     */
    @TableField("SEAL_HEADER_ID")
    private Integer sealHeaderId;

    /**
     * 封库/解封单号
     */
    @TableField("SEAL_NO")
    private String sealNo;

    /**
     * 封库/解封单行号
     */
    @TableField("SEAL_LINE_NO")
    private Integer sealLineNo;

    /**
     * 来源单号
     */
    @TableField("SOURCE_NO")
    private String sourceNo;

    /**
     * 来源单行号
     */
    @TableField("SOURCE_LINE_NO")
    private String sourceLineNo;

    /**
     * 货品
     */
    @TableField("SKU_ID")
    private Integer skuId;

    /**
     * 供应商
     */
    @TableField("VENDOR")
    private Integer vendor;

    /**
     * 库存性质
     */
    @TableField("INV_ATTR")
    private String invAttr;

    /**
     * 品质状态
     */
    @TableField("QA_STATUS")
    private Integer qaStatus;

    /**
     * 批次号
     */
    @TableField("LOTNO")
    private String lotno;

    /**
     * 销售订单号
     */
    @TableField("SO_NO")
    private String soNo;

    /**
     * 销售订单行号
     */
    @TableField("SO_LINE_NO")
    private String soLineNo;

    /**
     * 订单号
     */
    @TableField("PO_NO")
    private String poNo;

    /**
     * 生产工单
     */
    @TableField("PRD_WO")
    private String prdWo;

    /**
     * 仓库
     */
    @TableField("WHS_ID")
    private Integer whsId;

    /**
     * 库区
     */
    @TableField("ZONE_ID")
    private Integer zoneId;

    /**
     * 客户型号
     */
    @TableField("CUSTOMER_MODLE")
    private String customerModle;

    /**
     * 送检单号
     */
    @TableField("INSP_NO")
    private String inspNo;

    /**
     * 单位
     */
    @TableField("UNIT")
    private String unit;

    /**
     * 封库单：封库数量；解封单：默认为0
     */
    @TableField("SEAL_QTY")
    private BigDecimal sealQty;

    /**
     * 封库单：解封数量累计，解封单：解封数量
     */
    @TableField("UNSEAL_QTY")
    private BigDecimal unsealQty;

    /**
     * 批次属性1
     */
    @TableField("LOT_ATTR_1")
    private String lotAttr1;

    /**
     * 批次属性2
     */
    @TableField("LOT_ATTR_2")
    private String lotAttr2;

    /**
     * 批次属性3
     */
    @TableField("LOT_ATTR_3")
    private String lotAttr3;

    /**
     * 批次属性4
     */
    @TableField("LOT_ATTR_4")
    private String lotAttr4;

    /**
     * 批次属性5
     */
    @TableField("LOT_ATTR_5")
    private String lotAttr5;

    /**
     * 批次属性6
     */
    @TableField("LOT_ATTR_6")
    private String lotAttr6;

    /**
     * 批次属性7
     */
    @TableField("LOT_ATTR_7")
    private String lotAttr7;

    /**
     * 批次属性8
     */
    @TableField("LOT_ATTR_8")
    private String lotAttr8;

    /**
     * 批次属性9
     */
    @TableField("LOT_ATTR_9")
    private String lotAttr9;

    /**
     * 批次属性10
     */
    @TableField("LOT_ATTR_10")
    private String lotAttr10;

    /**
     * 批次属性11
     */
    @TableField("LOT_ATTR_11")
    private String lotAttr11;

    /**
     * 批次属性12
     */
    @TableField("LOT_ATTR_12")
    private String lotAttr12;

    /**
     * 数据来源
     */
    @TableField("DATA_SOURCE")
    private String dataSource;

    /**
     * 用户自定义字段1
     */
    @TableField("UDF1")
    private String udf1;

    /**
     * 用户自定义字段2
     */
    @TableField("UDF2")
    private String udf2;

    /**
     * 用户自定义字段3
     */
    @TableField("UDF3")
    private String udf3;

    /**
     * 用户自定义字段4
     */
    @TableField("UDF4")
    private String udf4;

    /**
     * 用户自定义字段5
     */
    @TableField("UDF5")
    private String udf5;

    /**
     * 备注
     */
    @TableField("COMMENTS")
    private String comments;

    /**
     * 状态
     */
    @TableField("STATUS")
    private Integer status;
}
